軟件模糊測試法有以下特點:
模糊測試的測試目標是二進制可執行代碼,比基于源代碼的白盒測試適用范圍更廣。
模糊測試是動態實際執行的,不存在靜態分析技術中存在的大量誤報問題。
模糊測試的原理簡單,沒有大量的理論推導和公式計算,不存在符號執行技術中的路徑狀態爆炸問題。
模糊測試自動化程度高,不需要逆向工程中大量的人工參與。
訪問控制漏洞的發現能力有限。通過模糊測試技術挖掘出的漏洞大多是傳統的溢出類漏洞,由于該技術的邏輯感知能力有限,對于違反權限控制的安全漏洞,如后門、繞過認證等漏洞的發現能力有限。
設計邏輯缺陷的發現能力有限。糟糕的邏輯往往并不會導致程序崩潰,而模糊測試發現漏洞的一個最重要依據就是監測目標程序的崩潰,因此,模糊測試對這種類型的漏洞也無能為力。
多階段安全漏洞的發現能力有限。模糊測試對識別單獨的漏洞很有用,但對那些小的漏洞序列構成的高危漏洞的發現能力有限。
多點觸發漏洞的發現能力有限。識別模糊測試技術不能準確地發現多條件觸發的漏洞。而且通常只能判斷出待測試軟件中存在何種漏洞,并不能準確地定位到程序源代碼中漏洞的位置。
模糊測試技術不能保證畸形輸入數據能夠覆蓋到所有的分支代碼,這就使得即使通過模糊測試檢驗的軟件仍可能存在未被發現的漏洞。
回答所涉及的環境:聯想天逸510S、Windows 10。
軟件模糊測試法有以下特點:
模糊測試的測試目標是二進制可執行代碼,比基于源代碼的白盒測試適用范圍更廣。
模糊測試是動態實際執行的,不存在靜態分析技術中存在的大量誤報問題。
模糊測試的原理簡單,沒有大量的理論推導和公式計算,不存在符號執行技術中的路徑狀態爆炸問題。
模糊測試自動化程度高,不需要逆向工程中大量的人工參與。
訪問控制漏洞的發現能力有限。通過模糊測試技術挖掘出的漏洞大多是傳統的溢出類漏洞,由于該技術的邏輯感知能力有限,對于違反權限控制的安全漏洞,如后門、繞過認證等漏洞的發現能力有限。
設計邏輯缺陷的發現能力有限。糟糕的邏輯往往并不會導致程序崩潰,而模糊測試發現漏洞的一個最重要依據就是監測目標程序的崩潰,因此,模糊測試對這種類型的漏洞也無能為力。
多階段安全漏洞的發現能力有限。模糊測試對識別單獨的漏洞很有用,但對那些小的漏洞序列構成的高危漏洞的發現能力有限。
多點觸發漏洞的發現能力有限。識別模糊測試技術不能準確地發現多條件觸發的漏洞。而且通常只能判斷出待測試軟件中存在何種漏洞,并不能準確地定位到程序源代碼中漏洞的位置。
模糊測試技術不能保證畸形輸入數據能夠覆蓋到所有的分支代碼,這就使得即使通過模糊測試檢驗的軟件仍可能存在未被發現的漏洞。
回答所涉及的環境:聯想天逸510S、Windows 10。